1
За пределами гладкой оболочки: Сила внутренней структуры
AI016Lesson 13
00:00

Чтобы действительно освоить Git, нужно заглянуть за удобную для пользователя поверхность гладкой оболочки команд и понять внутреннюю структуру—низкоуровневый механизм, управляющий внутренней базой данных объектов Git. Эта база данных представляет собой файловую систему с адресацией по содержимому, где каждый фрагмент данных хранится как неизменяемый объект.

1. Гладкая оболочка против внутренней структуры

гладкой оболочки относится к командам высокого уровня (например, git status), предназначенным для взаимодействия с человеком. внутреннюю структуру относится к низкоуровневым командам, которые напрямую манипулируют базой данных объектов Git, давая нам доступ к настоящему внутреннему представлению системы.

2. База данных объектов

Git работает как хранилище ключ-значение внутри папки .git/objects каталога, хранящего внутренние объекты: бинарные объекты (blobs), деревья (trees), коммиты (commits)и метки (tags). Ветви, хотя часто обсуждаются вместе с объектами, служат ссылками на эти коммиты.

Гладкая оболочка (терминал)$ git status"На ветке основной..."Внутренняя структура (.git/objects)├── af/└── e672b1...└── e6/└── 2a19f4...

3. Адресация по алгоритму SHA-1

Каждый объект имеет уникальный 40-символьный шестнадцатеричный контрольный сумма по алгоритму SHA-1. Git оптимизирует хранение, используя первые два символа как имя подкаталога (например, af/), а оставшиеся 38 символов — как имя файла.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>